#pragma once
#include "SurfaceShader.h"
#include "Light.h"
#include "Scene.h"
#include "BVH.h"
using namespace std;
class RefractiveShader : public SurfaceShader
{
public:
	RefractiveShader(float _amount, vec4 _col, float _IOR);
	~RefractiveShader();

	vec4 getColor(Intersection &_int, Scene* _s);
	
	vec4 color();
	void color(vec4 _col);
	
	float IOR();
	void IOR(float _IOR);
	
private:
	vec3 getRefractDir(vec3 _I, vec3 _N, float eta, int &_type);
	float indexOfRefraction;
	vec4 theColor;
	

};

